1. Field of the Invention
The present invention relates to an improvement of an apparatus for estimating coefficients for an adaptive filter which emulates signal transmission characteristics from a known signal, which is sent to a signal transmission system of unknown characteristics, and the response thereto.
A filter coefficient estimation apparatus according to the present invention can be applied, for example, to an apparatus which updates the coefficients of an adaptive filter used in an acoustic echo canceler or an active noise control system. The adaptive algorithm used to implement these apparatuses must, in addition to having convergence speed and stability and require a small amount of processing, must have low cost when its commercial use is considered.
2. Description of the Related Art
FIG. 1 and FIG. 2 show typical examples of apparatuses in which an improvement in operation is expected by the application of the present invention. The descriptions to follow use the examples of these apparatuses.
First, the apparatus shown in FIG. 1 is an apparatus known as a hands-free telephone which makes use of an acoustic echo canceler 200 which has the effect of reducing the acoustic coupling between a speaker 201 and a microphone 202, thereby enabling hands-free two-way communication. Specifically, this apparatus is made up of the acoustic echo canceler 200 and a signal transmission system 100, the signal transmission system 100 including a speaker 201, a microphone 202 which inputs the voice of the near-end talker, and the acoustic echo canceler 200 including an adaptive filter 220 which emulates the signal transmission system 100, a subtractor 210 which eliminates the echo from the signal picked up by the microphone 202, and a coefficient updating circuit 230 which performs updating of the coefficients of the adaptive filter 220.
In the apparatus shown in FIG. 1, the far-end talker's signal (corresponding to the above-noted known signal) Xj, which is sent to the signal transmission system, which includes the speaker 201, is the echo (corresponding to the above-noted response of the above-noted signal transmission system), which is fed back to the microphone 202. EQU gj=.SIGMA.hj(i)Xj(i) (1)
In the above equation:
j: Time (sample time index, iteration) PA0 .SIGMA.: Summation from i-1 to I PA0 hj(i): i-th sample value of the impulse response hj (impulse response at the time i) of the signal transmission system (echo path) from the speaker to the microphone PA0 Xj: i-th sample value of the far-end talker's signal Xj which is the echo (far-end talker's signal at the time j) PA0 I: Delay time given by the largest sampling period detected as an echo PA0 m: Indicates the m-th tap on the adaptive filter
The acoustic echo canceler cancels out this echo gj by subtracting from it an echo replica Gj expressed by equation (2), this being synthesized by a nonrecursive (Finite Impulse Response) adaptive filter 220, using the subtractor 210. EQU Gj=.SIGMA.Hj(i)Xj(i) (2)
In doing this, the number of taps on the adaptive filter is equal to the maximum echo delay I.
The degree to which the echo is canceled as a result of this subtraction can be measured by the error between the filter coefficient Hj (i) of the adaptive filter, which is computed by the coefficient updating circuit 230, and the impulse response hj (i) which is established by the transmission characteristics of the signal transmission system 100, this error being expressed as given in equation (3). EQU .DELTA.j(i)=hj(i)-Hj(i) (3)
The effect of using the acoustic echo canceler is maximum when the following difference (residual echo) is minimized. EQU Ej=.SIGMA..DELTA.j(i)Xj(i)+Nj (4)
In the above equation, Nj is periodic noise.
In the configuration example shown in FIG. 1, the coefficient updating circuit 230 is equivalent to the filter coefficient estimation apparatus of the present invention, this coefficient updating circuit 230 being configured as a filter having an impulse response which describes the characteristics of the signal transmission system 100, this being achieved by adjusting the filter coefficients Hj(i) of the adaptive filter 220 so that the above-noted difference Ej is a minimum.
The apparatus shown in FIG. 2 is known as an active noise control system, which eliminates, within a duct 300, the noise generated by a fan 305, the configuration of this apparatus including a detection sensor microphone 302 which collects noise, a noise-control filter 320 which generates pseudo-noise, a speaker 303 which outputs pseudo-noise, an error-sensor microphone 304 which collects the error which is the noise not eliminated, a feedback control filter 310 which emulates a feedback system, a coefficient updating circuit 340 which performs updating of the coefficients of the noise control filter 320, and an error path filter 330 which emulates the system from the noise control filter 320 to the coefficient updating circuit 340 via the error sensor microphone 304.
The principle of this active noise control system is that of outputting from the speaker 303 a pseudo-noise that has the same amplitude as, but the reverse phase to, the noise flowing in the duct 300 at the position of the error-sensor microphone 304, thereby canceling out the noise at the position of this microphone and reducing the noise that flows to the outside of the duct. However, in the description herein, it will be assumed that the feedback of pseudo-noise occurring in the system formed from the speaker 303 to the detection sensor microphone 302, this system being not directly related to the present invention, is completely canceled out by the output of the feedback control filter 310.
In this apparatus, the above-noted "signal transmission system of unknown characteristics" corresponds to the noise transmission system from the detection sensor microphone 302 to the error-sensor microphone 304, the signal being sent to the signal transmission system corresponds to the fan noise Xj that is collected by the detection sensor microphone 302, the filter that emulates the characteristics of the signal transmission system is the noise control filter 320, and the coefficient updating circuit 340 corresponds to the filter coefficient prediction apparatus of the present invention.
In this active noise control system, the coefficient updating circuit 340 adjusts the coefficients Hj of the noise control filter 320 so that the output ej of the microphone 304 is a minimum. In this condition, the radiation of noise to the outside of the duct is also a minimum.
The problem is the configuration of the coefficient updating circuit which computes the filter coefficients Hj. There have been, of course, a variety of proposed methods, each with its own characteristics. However, in considering the practical implementation of the apparatus, the configuration method should have the following characteristics.
Specifically, the configuration should be such that:
(a) each intermediate computation result should be neither larger than nor smaller than a limit imposed by the computation word length, PA1 (b) stable operation should be guaranteed, PA1 (c) the amount of computation performed should be small, and PA1 (d) if possible, convergence should be fast. PA1 Yj: Prediction dispersion filter 330 output PA1 ej: Microphone 304 output
In the past, the most typical algorithm for predicting coefficients for an adaptive filter which emulates the signal transmission characteristics from a known signal and the response thereto which are sent to a signal transmission system of unknown characteristics is the LMS method, shown below. EQU H.sub.j+1 (m)=Hj(m)+.mu.Ej Xj(m) (5)
In the above relationship, .mu. is known as the step gain, the range of which is established in terms of the power function of the signal Xj which is sent to the signal transmission system. For example, when this power of the signal is large, the upper limit of .mu. for which coefficient updating can be performed stably becomes small, and when this power is small, this upper limit becomes large. Therefore, in practical applications, the value of .mu. is fixed at a value which does not exceed the upper limit in the case of the largest envisioned power. The convergence speed is known to be faster the larger the step gain is. For this reason, when the step gain is set in accordance with the maximum power of the signal Xj, since in normal operation the power of this signal is not maximum, the convergence speed results in unnecessarily slow convergence for the great majority of time during which the power of this signal is small.
This problem is solved by the application of a normalized learning identification method (the normalized least mean square (NLMS) method) in which the second term of Equation (5) is normalized with respect to the norm [.SIGMA.Xj.sup.2 (i)] of the signal sent to the signal transmission system, this being expressed by Equation (6). EQU H.sub.j+1 (m)=Hj(m)+KEj Xj(m)/.SIGMA.Xj.sup.2 (i) (6)
This learning identification method is widely known as an algorithm that is suitable for application to an apparatus, such as the acoustic echo canceler shown in FIG. 1, in which a voice signal having sharp amplitude variations is sent to the signal transmission system.
The applicability of an adaptive algorithm to the implementation of an acoustic echo canceler or active noise control system as described above is judged based on such performance parameters as high-speed convergence, stability, and small amount of computation performed, and at present the above-described learning identification algorithm is an algorithm which has a performance in these areas which allows practical use. However, study and work on improving the performance of this learning identification algorithm, and in particular in achieving fast convergence, is continuing.
Once satisfactory performance is achieved, and the development of these apparatuses reach the product stage, another factor, that of low cost, becomes significant. With respect to the demand for low cost, the approach of implementing the learning identification algorithm with fixed-point processing provides an effective solution. Firstly, it enables the use of a low-cost signal processor, and secondly, the significant improvement in processing speed enables a reduction in production costs by enabling the duct used for noise reduction to be made even smaller.
The problem that arises is one of whether the updated quantities that are computed and added to the adaptive filter coefficients each sampling period are smaller or larger than the limits imposed by the word length used for fixed-point processing. In the learning identification algorithm, this problem arises because, due to the normalization by the norm value, the coefficient updating values are held to within the reciprocal of the tap number (when the step gain K is less than 1, K times that value). That is, the problem occurs because of the facts that, in Equation (6), the norm [.SIGMA.Xj2 (i)] increases proportionally with an increase in the number of the tap I, and the numerator Ej Xj (m) decreases as the coefficient updating proceeds. When using a low-cost processor or computing filter coefficients Hj using fixed-point quantities in order to achieve fast computation (reduction in the number of processors), a large denominator and a small numerator cause the second term of Equation (6) to be smaller than the word length limit, thereby making the updating invalid.
If the update value is smaller than the word length limit, of course, the coefficient of the adaptive filter will not be updated. The possibility of this occurring is large if the number of taps on the adaptive filter becomes large or if the step gain is set to a small value because of a high level of ambient noise, and the larger this possibility is, the slower will be the convergence. In addition, if the error becomes small as the coefficient updating proceeds, there can be a loss of digits in the update values, so that further updating is impossible, thereby imposing a limit on the improvement of the estimation accuracy.
What follows is a further detailed description, in accordance with Equation (6), of the problems associated with using fixed-point processing with the learning identification algorithm in predicting adaptive filter coefficients. In Equation (6), the errors occurring when this equation is executed using fixed-point processing are separated into the component caused by the first term and the component caused by the second term. Specifically, the component associated with the first term, Hj(m) is equal to the part smaller than the word length limit which is discarded when the impulse response hj(i) (I=1 to I) of the echo path is converted to fixed point. Therefore, it is possible to limit the associated error component by carefully adjusting the gain of the amplifier, which is related to the far-end talker's signal Xj and the microphone output Yj (=gj+Sj+Nj, where Sj is the near-end talker's signal) thereby achieving an amplitude distribution so that the adaptive filter coefficients Hj(m) are sufficiently larger than the word length limit. If this level distribution is properly achieved, the influence of implementing the computation of the coefficients Hj of the adaptive filter using fixed-point processing can be ignored from a practical standpoint.
The problem lies with the component associated with the second term. To clearly identify the influence of fixed-point processing of the second term on the prediction error, first the residual echo Ej of Equation (4) is calculated from the echo gj of Equation (1) and the echo replica Gj of Equation (2), after which the m-th tap component is separated from the residual echo, and the numerator of the second term of Equation (6) is changed as follows. ##EQU1##
It is clear that update value for the m-th tap coefficient of the adaptive filter to be computed is given by the difference between the impulse response hj(m) of the echo path and the coefficient Hj(m) of the adaptive filter, this difference being expressed as follows. EQU .DELTA.j(m)=hj(m)-Hj(m)
However, in the learning identification algorithm, the quantity Dj(m)=.DELTA.j(m) KXj.sup.2 (m)/.SIGMA.Xj.sup.2 (i), which is obtained by substituting the above-noted Ej Xj (m) into Equation (6), is treated as the coefficient updating value. This causes a problem. Specifically, in fixed-point processing in which the smallest quantity expressible is 2.sup.-M, if the coefficient updating value becomes Dj(m)&lt;2.sup.-M, it is clear that the coefficient updating will not be executed. The smaller the step gain k becomes and the greater the number of taps I the adaptive filter has, the greater is the probability that the coefficient updating value Dj(m) is smaller than the word length limit. If this probability becomes large, of course, convergence is delayed, and if because of the above-noted Dj(m)&lt;2.sup.-M limitation only large estimation errors Dj(m) are used in updating, it is not possible to achieve high estimation accuracy.
FIG. 3 shows the convergence in the case in which all computations for Equation (6) are performed as floating-point operations, and a comparison with the convergence behavior for the case in which, after computing the second term using floating-point processing conversion is made to 16-bit fixed-point form before adding to the coefficient Hj(m). In the cases of both characteristics, the conversion between the analog signal and the digital is done as a linear 16-bit conversion, the number of taps I of the adaptive filter is 512, the step gains are the three values 0.01, 0.005, and 0.0025, and the power ratio of the echo to the environmental noise is 10 dB. The conversion from floating point to fixed point is performed by truncating the part of the values below the word length limit.
As is clear from the results shown in FIG. 3, in spite of the fact that the simplest computing method, that of "converting to fixed point after doing a floating-point processing of the second term," is used, the coefficient updating by fixed-point operations using the learning identification algorithm caused delay in convergence, given an example of a case in which it would not be possible to achieve a high estimation accuracy. From these results, it is verified that the selection of a small step gain has, on the contrary, a reverse effect with respect to the echo cancellation amount.
These phenomena occur in the same manner in the filtered-X LMS algorithm which is used in the active noise control system shown in FIG. 2, and are expressed as follows. EQU H.sub.j+1 (m)=Hj(m)+.mu.ej Yj(m) (7)
They also occur in the same manner the filtered-X NLMS algorithm in which normalization to the output norm from the error path filter 330 is performed, and are expressed as follows. EQU H.sub.j+1 (m)=Hj(m)+KejYj(m)/.SIGMA.Yj.sup.2 (i) (8)
Because the above-noted normalization by a norm value is intrinsic to the principle configuration of the learning identification algorithm, it is difficult to solve problems which derive from this principle by merely performing scaling operations. Therefore, a solution in terms of an improvement in the algorithm itself is desirable.